﻿// 209 混合背包.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


using namespace std;



/*
http://oj.daimayuan.top/course/5/problem/169

有 n种物品要放到一个袋子里，袋子的总容量为 m。

物品一共有 3类，第 i种物品属于第 ai类，它的体积为 vi，把它放进袋子里会获得 wi的收益。

如果它属于第 1类物品，每种只能用一次。

如果它属于第 2类物品，每种可以用无限多次。

如果它属于第 3类物品，每种可以用 li次。

问如何选择物品，使得在物品的总体积不超过 m的情况下，获得最大的收益？请求出最大收益。

输入格式
第一行两个整数 n,m。

接下来 n行，每行三到四个整数 ai,vi,wi或 ai,vi,wi,li。

输出格式
一个整数，表示答案。

样例输入
5 10
1 6 5
3 3 4 2
1 5 2
3 3 5 2
2 3 2
样例输出
14
数据规模
对于所有数据，保证 1≤n,m,vi,wi,li≤1000,1≤ai≤3。
*/






int main()
{


	return 0;
}

 